{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "f28d433f",
   "metadata": {},
   "source": [
    "# Rules of Object Oriented Matplotlib"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "8f3b9ace",
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c84f6e01",
   "metadata": {},
   "source": [
    "## Example 1 - Without defining Axis"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "80ea68d2",
   "metadata": {},
   "source": [
    "- If you want to be quick and do not want to define axis manually and just want to do ax.plot(df), you will need to structure your df in specific way\n",
    "    - By default, index is taken as x axis\n",
    "    - So, you will need to change the index of your df to whatever column you want as x axis\n",
    "    - There should be no other categorical variable\n",
    "    - All the numerical columns will be plotted as separate lines"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "id": "ac4110d1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Sales</th>\n",
       "      <th>Profit</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Jan</th>\n",
       "      <td>99</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feb</th>\n",
       "      <td>98</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>March</th>\n",
       "      <td>95</td>\n",
       "      <td>30</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>April</th>\n",
       "      <td>90</td>\n",
       "      <td>40</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       Sales  Profit\n",
       "Jan       99      10\n",
       "Feb       98      20\n",
       "March     95      30\n",
       "April     90      40"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data = {'Month':['Jan','Feb','March','April'],\n",
    "        'Sales': [99, 98, 95, 90],\n",
    "        'Profit': [10,20,30,40]\n",
    "       }\n",
    "df=pd.DataFrame(data,columns=['Sales','Profit'],index=data['Month'])\n",
    "df\n",
    "\n",
    "# See how I changed the structure of dataframe in pd.dataframe"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "id": "03ebbd22",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 1.0, 'Product Sales vs Profits')"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAEICAYAAACktLTqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAhMklEQVR4nO3deZgcd33n8fenp+eURqNrdFsWNj6wZVvIY4ExIQ4mSxKc2CY42AFi8xgclhCSLMnGZJMNTzaA2SUHCdlNTAKYBEwcHIKXLFm8Jg4LWYwlW/iSHRufkkb3MTpmNEd/949fjbrnkjTTM9Mzpc/refR0df2qa77TrflU9a9+VaWIwMzM8qVQ6wLMzGzyOdzNzHLI4W5mlkMOdzOzHHK4m5nlkMPdzCyHHO42bSQ9IOk9ta7jRCR9XtLv17qOqSbp9yXtkbRD0mpJhyXV1boumzwOdxtC0guSurM/9p2SPidpbq3rGiTpSklbT7LMKkn3ZOF1UNJjkm6ephKnRPZ7l7LP5ZCkpyW9e4LrOgP4EHBBRCyLiJciYm5EDGTtM34jbCfncLfR/HREzAXWA5cBvz18AUnFaa/q1P018DJwJrAI+AVgZ00rmhzbs89lHvCbwGckXTB8oVP4bM4E9kbErimo0WYIh7uNKSK2Ad8A1gJICkm/JOkZ4Jls3nslPStpn6R7Ja0YfL2kH5f0VLb3/GlAFW0fkfQ3Fc/XZOsvZs8XZt8atkvaL+kfJM3J6lmR7cEervx5FS4DPh8RRyKiPyIeiYhvVPysv8u6Iw5K+rakC8d6DyRdLWmzpAOS/lXSxRVtvylpW8We9FWjvP612c+qq5h3naRHs+kNkjZK6sq+Kf3h2J9IEsk/APuBCyTdLOm7kv5I0j7gI5LaJH1B0m5JL0r6bUkFSW8C7qt4Dz9f+d5L+ijwI8Cns/ZPK/kjSbuy9+xRSWtPVqfVlsPdxpR9ff8p4JGK2dcCryGFyhuBjwM/BywHXgS+nL12MXAPaa9/MfBD4Ipx/Pi/BlqAC4ElwB9FxBHgJ8n2YLN/20d57feAP5N0g6TVo7R/AzgnW+/DwBdHK0DSeuCzwC+SvgH8BXCvpEZJ5wEfAC6LiFbgzcALw9cREd8DjgBvrJj988CXsulPAZ+KiHnA2cDdY7wflXUVJF0HzAcey2a/Bngu+50+Cvwp0AacBfwo6dvLuyPi/zD0Pbx5WL3/Cfi/wAey9g8A/w54A3Bu9jPfDuw9WZ1WWw53G80/SDoAfAf4F+BjFW0fj4h9EdENvAP4bEQ8HBHHgA8Dl0taQ9ooPBkRX4mIPuCPgR2n8sMlLScF0PsiYn9E9EXEv4yj/utJAfU7wPPZnvdlg40R8dmIOJTV/BHgEklto6znvcBfRMSDETEQEXcCx4DXAgNAI2kjVx8RL0TED8eo5y7gxux3ayW9N3dlbX3AKyUtjojD2cZgLCuyz2UP8LvAuyLi6axte0T8aUT0A72kAP5w9nu+APwB8K4TrPtE+oBW4HxAEbElIjonuC6bJg53G821ETE/Is6MiPdnQT7o5YrpFaS9dQAi4jBpj25l1vZyRVsMe+2JnAHsi4j9Eyk+2yDcFhEXAkuBzaQNliTVSbpd0g8ldVHe2148yqrOBD6UdckcyIL1DGBFRDwL/Cpp47BL0pfH6CKCtJf+VkmNwFuBhyNi8H27hbRH/JSkhyRdfYJfbXv2uSyMiHUR8eWKtsr3djHQQMVnk02vPMG6xxQR3wI+DfwZsFPSHZLmTWRdNn0c7jZelZcR3U4KQACyPvFFwDagkxSEg22qfE7qqmipeL6sYvplYKGk+Sf5+ScvNmIP8EnSxmYhqUvkGuBNpG6LNYMljvLyl4GPZoE6+K8lIu7K1v2liHg96T0I4BNj1PAkKVx/kqFdMkTEMxFxI6k75RPAV7L3cbwq35c9pL3tMyvmrSZ9LuNd12CdfxIRl5K6yc4FfmMCNdo0crhbNb4EvFvSumyv9GPAg1k3wD8CF0p6a3aQ9IMMDfDNwBuUxli3kbp0AMi+8n8D+O+SFkiql/SGrHknsGiMbhQAJH1C0trsAGEr8O+BZyNiL6l74RjpG0YLQ7uchvsM8D5Jr8n2+udIeoukVknnSXpj9nv3AN2krpoTvVcfJPVd/11Fre+U1B4RJeBANvtE6zmpbEjj3cBHs1rPBP4D8DcnfuVxO0l99YM1Xpa9B/WkjXJPtTXa1HO424RFxP2kfu17SHvqZwM3ZG17SH3ft5OC9BzguxWvvQ/4W+BRYBPw9WGrfxdp7/MpYBepC4SIeIrUX/1c1lUyWldIC/BVUlg+R9qD/Zms7QukvehtwJOkg69j/X4bSf3unyaNTHkWuDlrbsx+tz2kYwlLgN8aa11ZzVcC38rem0E/ATwh6TDp4OoNEdFzgvWcql8mBfFzpGMnXyIdHD4VnwLepjRK6U9IQy8/Q3oPXiR9np+chBptCsk36zAzyx/vuZuZ5ZDD3cwshxzuZmY55HA3M8uhGXHxp8WLF8eaNWtqXYaZ2ayyadOmPRHRPlrbjAj3NWvWsHHjxlqXYWY2q0h6caw2d8uYmeWQw93MLIcc7mZmOXTScJf02ewi/Y9XzFso6T5Jz2SPCyraPqx084anJb15qgo3M7Oxncqe++dJ17+odBtwf0ScA9yfPUfpll83kK4c9xOkCz/5prtmZtPspOEeEd8G9g2bfQ1wZzZ9J+nuPIPzvxwRxyLiedKFljZMTqlmZnaqJtrnvnTwTizZ45Js/kqG3jRgK2PcIEDSrUr3jty4e/fuCZZhZmajmexx7qPd8GDUy05GxB3AHQAdHR0TujTljoM9fPHBF6mvK1CsEw11hePT9XUF6o8/lqeLhQINxaHTxUKB+mK2zLDpQmG0X8nMbGabaLjvlLQ8Ijqz+13uyuZvZejddlaR7tYzJXZ09fDpf36WqbxqcV1BFAvZhqNYoFg4wYYje2wYsoEZuWwxm26omB59QyTqi9n6KqcHly0UqC8OnS4W0uvTjY/M7HQ10XC/F7iJdLOCm4CvVcz/kqQ/JN3W7Bzg+9UWOZZ1Z8zn+Y+/hYFS0DdQonegRP9Amk7/hk73Z8sMTo+2zPDpwfUNXfcoy5VK9PUHh/r6j0/3lbJl+oP+Uone/hL9pfI6plJ9XTnoj280itk3kzE3ROVlB78JnWyDVcw2UpXTxUKBloY65jXX09Zcz7zmelobi/4WZDaNThrukgbvILNY0lbSXddvB+6WdAvwEumOO0TEE5LuJt3hph/4peyWX1OqriDqCnU01c+egTkRUQ76ig1B/0BkG6Dy9OgbmMoNUIneig1W7xgbr7HW3dtf4six/ooNVZo3ON3XX8rqCwZKE9soFQStTSnsU+AXK6Yr5lcsM/ivtalIsc6nZJiNx4y4E1NHR0f42jKzQ6kUx4N+rG9Cvf0ljvYOcLC7j67uPrp6+jjYPfRf1/Hpfrq6++gdKJ3w585tLFZsCIojNwIt5Q3DvGEbh4aiNwyWT5I2RUTHaG0z4sJhNnsUCqKxUEfjJP7PiQh6+kpDNwJHKzYEPSM3Ci/uPXp8Xnffib8cNtUXRnwbmNc0ciMw/Hlbcz1N9QUfv7BZyeFuNSeJ5oY6mhvqWDqvadyv7+0vjbkROHh05DeHbQd62NJ9iK7uPg4d6z/huhvqCsxrLo7cEDSN3DBUdjW1Ndczt7HoDYPVjMPdZr2GYoH21kbaWxvH/dr+gRKHevpHbBzKG4n+IRuLvYd7eW73Ebp60rwTHYIoiFG/HYx2XGH4cYjWpnrqfADaquBwt9Nasa7AgjkNLJjTMO7XlkrB4d7+411Ig4E/2sbh+LeG/d3Hp/tPcnC6tWmUYwsnOhhdMV3vA9CnPYe72QQVCkp99031Q07uOBURQXffwJBjDF09/cM2DEM3Fj/cffj49LH+Ex+AbmmoG9J9NK+5nvkt9Syb18SytiaWtw0+NrOgpd7dRznkcDerAUm0NBRpaSiyvK153K/v6RsY8U1h+LeEyu6krfuP8vi2PnYd6hnRldRQLKSwnzcY+s0V4Z8eF89p9HkKs4zD3WwWaqpP53UsaR3fAej+gRJ7DvfSebCbHQd76DzYw46u7PFgNxtf3M/Ors4RJ9nV14klrSnsl89vHrYxSN8A2lsbfZxgBnG4m51GinUFlmWBPJZSKdh7pDcL/+6K8E/PH9t6gG8+0TOia6iuIJa0Npb3+OeN/AawpLXJ5x1ME4e7mQ1RKOj46KOLVrWNukxEcOBoX7bn310R/unx6R2HeODp3RztHXoOggSL5zaesBto6bymWXW2+UzlcDezcZN0fJTRBSvmjbpMRHDoWH9F6A/dCLy49yjfe24vXT0jzzVYOKdhWLfPyI1AS4Pj60T87pjZlJDKo4nOXdo65nJHjvWzo6sc+p0HuunMnm8/2MPDL+1n/9G+Ea9ra64fGv6jdAO1NtVP5a84oznczaym5jQWObt9Lme3zx1zmZ6+gYoDwCO7gR7f1sWew8dGvG5uY7Ei/Ef/BtDWnM+hoA53M5vxmurrWLN4DmsWzxlzmd7+Eju7ho7+qdwIPLNzz6hDQZvqCyxvaz5hN9DCloZZNxTU4W5mudBQLHDGwhbOWNgy5jL9AyV2Hz42bM+/vBF48Pl97OzqGXH2cENdgaVtjSyf1zzsJLC0EVjR1sSiuTNrKKjD3cxOG8W6tJd+ohPHSqVgz5FjQ7p9KjcCP9h6gH96oofeYUNBiwWxNDsDeFlbE8vnlc8BGNwQLGltnLZ7EzjczcwqFArphK0lrU1cvGr0ZSKC/Uf7hp4MVnFMYEtnF9/asmvE5agLgvbWxtTlk4V/x5oFXH3xikn/PRzuZmbjJImFcxpYOKeBC1eMfS5AV09/Nuqne8Q3gB/uPsx3n91DV0+fw93MbLaQdPwqnectG3soaN9J7kI2UT4P2Myshqbq8swOdzOzHHK4m5nlkMPdzCyHHO5mZjnkcDczyyGHu5lZDjnczcxyyOFuZpZDDnczsxxyuJuZ5ZDD3cwshxzuZmY55HA3M8shh7uZWQ453M3McsjhbmaWQ1WFu6Rfk/SEpMcl3SWpSdJCSfdJeiZ7XDBZxZqZ2amZcLhLWgl8EOiIiLVAHXADcBtwf0ScA9yfPTczs2lUbbdMEWiWVARagO3ANcCdWfudwLVV/gwzMxunCYd7RGwDPgm8BHQCByPim8DSiOjMlukEloz2ekm3StooaePu3bsnWoaZmY2imm6ZBaS99FcAK4A5kt55qq+PiDsioiMiOtrb2ydahpmZjaKabpk3Ac9HxO6I6AP+HngdsFPScoDscVf1ZZqZ2XhUE+4vAa+V1CJJwFXAFuBe4KZsmZuAr1VXopmZjVdxoi+MiAclfQV4GOgHHgHuAOYCd0u6hbQBuH4yCjUzs1M34XAHiIjfBX532OxjpL14MzOrEZ+hamaWQw53M7MccribmeWQw93MLIcc7mZmOeRwNzPLIYe7mVkOOdzNzHLI4W5mlkMOdzOzHHK4m5nlkMPdzCyHHO5mZjnkcDczyyGHu5lZDjnczcxyyOFuZpZDDnczsxxyuJuZ5ZDD3cwshxzuZmY55HA3M8shh7uZWQ453M3McsjhbmaWQw53M7MccribmeWQw93MLIcc7mZmOeRwNzPLIYe7mVkOOdzNzHLI4W5mlkMOdzOzHHK4m5nlkMPdzCyHqgp3SfMlfUXSU5K2SLpc0kJJ90l6JntcMFnFmpnZqal2z/1TwD9FxPnAJcAW4Dbg/og4B7g/e25mZtNowuEuaR7wBuCvACKiNyIOANcAd2aL3QlcW12JZmY2XtXsuZ8F7AY+J+kRSX8paQ6wNCI6AbLHJaO9WNKtkjZK2rh79+4qyjAzs+GqCfcisB74HxHxauAI4+iCiYg7IqIjIjra29urKMPMzIarJty3Alsj4sHs+VdIYb9T0nKA7HFXdSWamdl4TTjcI2IH8LKk87JZVwFPAvcCN2XzbgK+VlWFZmY2bsUqX//LwBclNQDPAe8mbTDulnQL8BJwfZU/w8zMxqmqcI+IzUDHKE1XVbNeMzOrjs9QNTPLIYe7mVkOOdzNzHLI4W5mlkMOdzOzHHK4m5nlkMPdzCyHHO5mZjnkcDczyyGHu5lZDjnczcxyyOFuZpZDDnczsxxyuJuZ5ZDD3cwshxzuZmY55HA3M8shh7uZWQ453M3McsjhbmaWQw53M7MccribmeWQw93MLIcc7mZmOeRwNzPLIYe7mVkOOdzNzHLI4W5mlkMOdzOzHHK4m5nlkMPdzCyHHO5mZjnkcDczyyGHu5lZDjnczcxyqOpwl1Qn6RFJX8+eL5R0n6RnsscF1ZdpZmbjMRl77r8CbKl4fhtwf0ScA9yfPTczs2lUVbhLWgW8BfjLitnXAHdm03cC11bzM8zMcqc0ADseh42fgy1fn5IfUazy9X8M/EegtWLe0ojoBIiITklLRnuhpFuBWwFWr15dZRlmZjPY4d2wbSNsfQhe/j5sfwR6D6e2V/00vOrqSf+REw53SVcDuyJik6Qrx/v6iLgDuAOgo6MjJlqHmdmM0t8LOx+DrVmYb30I9r+Q2gpFWHYRrPt5WHUZrOqABa+YkjKq2XO/AvgZST8FNAHzJP0NsFPS8myvfTmwazIKNTObcSKga1sW4lmYb98MA8dSe+vyFOIdt6THFeugvnlaSptwuEfEh4EPA2R77r8eEe+U9N+Am4Dbs8evVV+mmdkM0HsUOjeX98i3boRDnamt2ATL18GG92Z75ZdB28qalVptn/tobgfulnQL8BJw/RT8DDOzqRUB+56rCPKH0kHQGEjtC14Ba36k3L2ydC0UG2pbc4VJCfeIeAB4IJveC1w1Ges1M5s2PQdh28NZ98r302P3vtTWMBdWXgqv/7VymM9ZXNt6T2Iq9tzNzGa20gDsfnpo98rup4AABO3nw/lvKXevtJ8HhbpaVz0uDnczy78je4aOXtn2MPQeSm3NC1KAr31r2iNfeSk0tdW23kngcDezfBnogx3DhyI+n9pUB8vWwiVvL++VLzwLpNrWPAUc7mY2ux3cNrR7pXMz9PektrnL4IzLoOPdKciXr4OGllpWO20c7mY2e/R1Q+cP0lmex4cibk9tdY1pHPll70ndK6sug3krc7lXfioc7mY2M0Wk7pTK7pUdj0GpP7UvWANrrqgYinjRjBqKWGsOdzObGXq6YPvDQ8/2PLo3tdXPgZXr4XUfhDM2wMoOmNte23pnOIe7mU2/Ugn2DBuKuGsLaSgisPg8OPcny90rS14164Yi1prD3cym3pG95asiDg5FPNaV2prmpwC/4NryUMTm+TUsNh8c7mY2uQb6YOcTQ0/b3/dcalMdLL0QLrq+PBRx0dmn7UHPqeRwN7PqdHUO7V7Z/gj0d6e2uUtTgK+/qXxVxIY5NS33dOFwN7NT19eThiJWhnnX1tRW1wDLL8nGlGd95W1neK+8RhzuZja6iHSTiRFDEftS+/zVsPo1sOoDKciXXQTFxpqWbGUOdzNLjh3KropYORRxT2qrb0kHOl+XBfnKDmhdWtt67YQc7mano1IJ9j4zbCjikxCl1L74XDj3zeXulfZXQZ3jYjbxp2V2Oji6D7ZtqgjzTXDsYGpraksB/qqfrhiKuKC29VrVHO5meTPQD7ueGNq9svfZ1KYCLLkwu7zt4FDEV0KhUNuabdI53M1mu0M7Rg5F7Dua2ua0w6oNsO4daa98xXponFvbem1aONzNZpO+Htjx6NAwP/hyaivUp6GI628q95XPX+2hiKcph7vZTBUBB14a2r2y41EY6E3tbatTgL/2/eWhiPVNta3ZZgyHu9lMcexw6lKpDPMju1JbfUvqUhkM8lUd0LqstvXajOZwN6uFUikd5BwyFPGJ8lDERa+EV15VcVXECz0U0cbF/1vMpsPRfRUnCD2UrpDYkw1FbGyDVZfC+b+RnSB0KbQsrG29Nus53M0m20B/OiFoyFDEZ1KbCrDkArjwuoqhiOd4KKJNOoe7WbUO7Ux74i9/PxuK+HB5KGLL4nTnoHU3ZldFfDU0tta2XjstONzNxqP/WLp4VuW1yg+8lNoK9bD8Ylj/C+WDnvPP9FBEqwmHu9lYItIY8srulc4flIcizluVAnzDL6YwX34x1DfXtmazjMPdbFDvkZFDEQ/vTG3F5tSl8pr3lffK562obb1mJ+Bwt9NTxLChiA/BzichBlL7wrPhrB8rD0VceiHU1de2ZrNxcLjb6aH7QHZVxI2wNTvw2XMgtTXOS8MPf+RD5aGIcxbVslqzqjncLX9KA7Bry9DulT1PZ41KQxEvuKY8FHHxuR6KaLnjcLfZ7/CuobeC2/Yw9B1JbS2LUoBffH02FHE9NM2rbb1m08DhbrNLf+8oQxFfTG2FYrp41qvfUT7oueAVHopopyWHu81cEXBw6yhDEY+l9nkrs6GI782GIl7ioYhmGYe7zRy9R6FzcwrxwbM9D+9IbcWmbCjireUbNLetrGm5ZjOZw91qIwL2PTe0e2XH4xVDEc+Cs3603L2ydK2HIpqNw4TDXdIZwBeAZUAJuCMiPiVpIfC3wBrgBeDnImJ/9aXarNZzsGIoYhbm3dl/i4ZWWLkeXv9r5TCfs7i29ZrNctXsufcDH4qIhyW1Apsk3QfcDNwfEbdLug24DfjN6ku1WaM0ALufGnqt8t1PAwEI2s+H868uD0VsPw8KdbWu2ixXJhzuEdEJdGbThyRtAVYC1wBXZovdCTyAwz3fDu9OV0WsHIrYezi1NS9MAb72bWmPfOV6aGqrbb1mp4FJ6XOXtAZ4NfAgsDQLfiKiU9KSMV5zK3ArwOrVqyejDJsO/b2w8/GKMz0fgv0vpDbVpaGIl9xYPm1/4VkeimhWA1WHu6S5wD3Ar0ZEl07xDzki7gDuAOjo6Ihq67ApcnDb0O6Vzs3Q35PaWpenAO+4pTwUsaGlpuWaWVJVuEuqJwX7FyPi77PZOyUtz/balwO7qi3SpklfN2zfPDTMD21PbXWNsGIdXPaecl+5hyKazVjVjJYR8FfAloj4w4qme4GbgNuzx69VVaFNjeNDESv6ync+DqX+1L5gDay5omIo4kVQbKhpyWZ26qrZc78CeBfwmKTN2bzfIoX63ZJuAV4Crq+qQpscPV2jDEXcl9oa5qYDnVf8SvkEobntta3XzKpSzWiZ7wBjdbBfNdH12iQoldJVEF/+fsVQxKdIQxHJhiL+VMVQxPM9FNEsZ3yGah4c2TtyKOKxrtTWND8bivjW1L2yYj00z69ltWY2DRzus81AX8VQxCzM9z2X2lSX7hh00fXlvfJFZ3sootlpyOE+03VtHzp6Zfsj5aGIc5emAF9/U3at8nXQMKem5ZrZzOBwn0n6utMlbSvDvGtbaqtrgOXrsjHl2QlCbau8V25mo3K410pEOrNzyFURHysPRZx/Jqy+vNy9smwtFBtrWrKZzR4O9+ly7FA60Fl544mje1Jb/Zw0FPF1vwyrNqQ987mjXrXBzOyUONynQqkEe/5taPfKric5PhRx8blw7pvL3Svtr4I6fxRmNnmcKJPh6L5hN2jeVDEUsS0F+AU/k10V8VJoXlDbes0s9xzu4zXQBzufGNq9su+HqU2FbCji28p95QvPhkKhtjWb2WnH4X4yXZ0VJwhtTP3m/d2pbc4SOGMDrH9XdlXEddA4t6blmpmBw32ovh7Y8ejQvvKDL6e2Qn26pO2lN5f7yuev9lBEM5uRTt9wj4ADLw7tK+98FEp9qb1tdQrw174/G4p4EdQ31bZmM7NTdPqE+7HDsH3YUMQju1NbfUu65srlv1S+xG3rstrWa2ZWhXyGe6kEe58ZORQxSql90Tnwyh8vd68sucBDEc0sV/KRaEf3ZScIDV7idhMcO5jaGttSiJ9/dXat8vXQsrC29ZqZTbHZHe7bH4F73pv20iENRVxyAay9Lute2QCLXumhiGZ22pnd4d66HBafA+tuzK6K+GpobK11VWZmNTfLw30Z3HhXraswM5tx3F9hZpZDDnczsxxyuJuZ5ZDD3cwshxzuZmY55HA3M8shh7uZWQ453M3MckgRUesakLQbeLGKVSwG9kxSOTY5/JnMPP5MZqZqPpczI6J9tIYZEe7VkrQxIjpqXYeV+TOZefyZzExT9bm4W8bMLIcc7mZmOZSXcL+j1gXYCP5MZh5/JjPTlHwuuehzNzOzofKy525mZhUc7mZmOTRrwl3S4VrXYGWSBiRtrvi35gTLPiDJQ/AmiaSQ9NcVz4uSdkv6+iSt339rk0DSddlndf4EXvuXki7Ipl+QtHi865jdd2KyWuqOiHW1LuI0dQRYK6k5IrqBHwe2jWcFkooR0T8l1dmgG4HvADcAHznVF0mqi4j3VPvDZ82eO4CkuZLul/SwpMckXZPNXyNpi6TPSHpC0jclNde63tONpEsl/YukTZL+t6TlFc3vlPSvkh6XtKFmRebHN4C3ZNM3AsfvNylpQ/ZeP5I9npfNv1nS30n6n8A3s7+nz2V/S49K+tmKdXxU0g8kfU/S0un8xfJA0lzgCuAWUrgj6UpJ35b0VUlPSvpzSYWs7bCk35P0IHD5ZHzbnVXhDvQA10XEeuDHgD+QpKztHODPIuJC4ADws6OvwiZJc0WXzFcl1QN/CrwtIi4FPgt8tGL5ORHxOuD9WZtV58vADZKagIuBByvangLeEBGvBv4z8LGKtsuBmyLijcDvAAcj4qKIuBj4VrbMHOB7EXEJ8G3gvVP7q+TStcA/RcS/Afskrc/mbwA+BFwEnA28NZs/B3g8Il4TEd+ZjAJmW7eMgI9JegNQAlYCg3sVz0fE5mx6E7Bm2qs7vQzplpG0FlgL3Jdtb+uAzorl7wKIiG9LmidpfkQcmL5y8yUiHs2Oc9wI/K9hzW3AnZLOAQKor2i7LyL2ZdNvIturzNa5P5vsBQb77zeRun1sfG4E/jib/nL2/B+B70fEcwCS7gJeD3wFGADumcwCZlu4vwNoBy6NiD5JLwBNWduxiuUGAHfLTC8BT0TE5WO0Dz+hwidYVO9e4JPAlcCiivn/BfjniLgu2wA8UNF2pGJajP459EX5BJgBZl9O1JSkRcAbScdFgrSjE6SN8Fh/Bz0RMTCZdcy2bpk2YFcW7D8GnFnrguy4p4F2SZcDSKqXdGFF+9uz+a8ndQUcrEGNefNZ4Pci4rFh89soH2C9+QSv/ybwgcEnkhZManWnr7cBX4iIMyNiTUScATxP2kvfIOkVWV/720kHXKfErAh3SUXSnvkXgQ5JG0l78U/VtDA7LiJ6Sf+pPyHpB8Bm4HUVi+yX9K/An5MOMlmVImJrRHxqlKb/Cnxc0ndJe41j+X1gQXaQ+wek41hWvRuBrw6bdw/w88D/A24HHicF/vDlJs2suPyApEuAz0SER1mY2awk6Urg1yPi6un4eTN+z13S+0gH43671rWYmc0Ws2LP3czMxmfG77mbmdn4OdzNzHLI4W5mlkMOdzOzHHK4m5nl0P8H8Hi324GtpUIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig,ax=plt.subplots()\n",
    "ax.plot(df)\n",
    "ax.set_title('Product Sales vs Profits')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8090a470",
   "metadata": {},
   "source": [
    "## Example 2 - Manually defining Axis"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "id": "d9649ae3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Subject</th>\n",
       "      <th>SahilMarks</th>\n",
       "      <th>SoniaMarks</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>A</td>\n",
       "      <td>99</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>B</td>\n",
       "      <td>98</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>C</td>\n",
       "      <td>95</td>\n",
       "      <td>30</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>D</td>\n",
       "      <td>90</td>\n",
       "      <td>40</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  Subject  SahilMarks  SoniaMarks\n",
       "0       A          99          10\n",
       "1       B          98          20\n",
       "2       C          95          30\n",
       "3       D          90          40"
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data = {'Subject': ['A', 'B', 'C', 'D'],\n",
    "        'SahilMarks': [99, 98, 95, 90],\n",
    "        'SoniaMarks': [10,20,30,40]\n",
    "       }\n",
    "df=pd.DataFrame(data)\n",
    "df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "id": "c57e46c9",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fad38c90bb0>]"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig,ax=plt.subplots()\n",
    "ax.plot(df.index,df['SahilMarks']) # Manually giving x axis\n",
    "ax.plot(df.index,df['SoniaMarks'],ls='--') # Manually giving y axis\n",
    "\n",
    "# Note, if you don't provide axis, directly use ax.plot(df) ->\n",
    "    # Index becomes x axis\n",
    "    # remaining number column becomes y axis\n",
    "    # Fails if more than one number column so its better to define manually"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "91e99019",
   "metadata": {},
   "source": [
    "## Summary"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "59268b1d",
   "metadata": {},
   "source": [
    "- If you want quick analysis, pass entire df to ax.plot()\n",
    "- If you want customizations of each line, declare them separately and plot each of them separately using ax.plot() multiple times\n",
    "- Pro Tip: Lets say you want different line for each country then you will need different column for different countries (since lines are columns in matplotlib) so pivoting is required for that and keep index as your only dimension (Keep only One dimension)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "db1ce548",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}